package com.lx.javasunmmrize.tcp;

import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;

/**
 * @Description TODO
 * @Author lx
 * @Date 2021/3/7 15:44
 **/
public class SClient {

    public static void main(String[] args) throws IOException {
        //创建一个Socket对象，连接IP地址为192.168.101.56的服务器的9002端口
        Socket s = new Socket("127.0.0.1", 9002);
        //xml内容 　　　　　　　　　　
        String fix = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><MESSAGE>中文</MESSAGE>";
        byte[] b = fix.getBytes();

        int xmlleng = b.length;//2是包头长度，第一个4是xml内容长度，第二个4是包尾长度,为了程序     的阅读性良好，建议定义成变量或常量　　　　　
        int pacLen = xmlleng;
        byte[] content = new byte[pacLen];

//        //包头　　　　　　
//        content[0] = (byte) 0xE2;
//        content[1] = (byte) 0x5C;
        //xml内容
        for (int i = 0; i < b.length; i++) {
            content[i] = b[i];
        }

//        //计算XML格式数据的长度
//        content[pacLen - 8] = (byte) xmlleng;
//        content[pacLen - 7] = (byte) (xmlleng >> 8);
//        content[pacLen - 6] = (byte) (xmlleng >> 16);
//        content[pacLen - 5] = (byte) (xmlleng >> 24);
//        //包尾
//        content[pacLen - 4] = (byte)0x00;
//        content[pacLen - 3] = (byte)0x00;
//        content[pacLen - 2] = (byte)0x00;
//        content[pacLen - 1] = (byte)0xff;
        //传输字节流 　　　  　
        DataOutputStream output = new DataOutputStream(s.getOutputStream());
        output.write(content, 0, content.length);
        output.close();
        //关闭Socket连接 　　　
        s.close();
    }

}
